// utils/tools.js
const util = {
  // 提示工具函数
  Tips: function (opt, to_url) {
    if (typeof opt === 'string') {
      opt = {
        title: opt,
      };
    }
    opt.icon = opt.icon || 'none';
    opt.duration = opt.duration || 2000;
    uni.showToast(opt);

    // 如果有跳转地址，延时跳转
    if (to_url) {
      setTimeout(() => {
        uni.navigateTo({
          url: to_url,
        });
      }, opt.duration);
    }
  },
  
    msg(content, callback) {
      uni.showToast({
        title: content || '操作成功', // 默认消息内容
        icon: 'none', // 图标类型可以根据需要修改
        duration: 2000, // 显示时间
        success() {
          if (typeof callback === 'function') {
            // 延迟执行回调函数，等到 Toast 完全消失后
            setTimeout(() => {
              callback();
            }, 2000); // 确保与 Toast 的 duration 一致
          }
        }
      });
    },
	
	error(content, callback) {
	  uni.showToast({
	    title: content || '操作失败', // 默认消息内容
	    icon: 'error', // 图标类型可以根据需要修改
	    duration: 2000, // 显示时间
	    success() {
	      if (typeof callback === 'function') {
	        // 延迟执行回调函数，等到 Toast 完全消失后
	        setTimeout(() => {
	          callback();
	        }, 2000); // 确保与 Toast 的 duration 一致
	      }
	    }
	  });
	},

/**
 * 将时间戳转换为指定格式的日期
 * @param {number} timestamp - 需要转换的时间戳
 * @param {string} format - 日期格式，默认是 'Y-m-d'
 * @returns {string} 格式化后的日期字符串
 */
 formatDate(timestamp, format = 'Y-m-d') {
  const date = new Date(timestamp * 1000); // 转换为毫秒时间戳

  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始
  const day = String(date.getDate()).padStart(2, '0');
  const hours = String(date.getHours()).padStart(2, '0');
  const minutes = String(date.getMinutes()).padStart(2, '0');
  const seconds = String(date.getSeconds()).padStart(2, '0');

  // 通过替换占位符返回指定格式的日期字符串
  const formattedDate = format
    .replace(/Y/g, year)
    .replace(/m/g, month)
    .replace(/d/g, day)
    .replace(/H/g, hours)
    .replace(/i/g, minutes)
    .replace(/s/g, seconds);

  return formattedDate;
},

//当前日期
  getFormattedDate() {
      const now = new Date();
      const year = now.getFullYear();
      const month = String(now.getMonth() + 1).padStart(2, '0');
      const day = String(now.getDate()).padStart(2, '0');
      return `${year}-${month}-${day}`;
    }
};

export default util;
